var sy = sb = Symbol('a');
// 从右到左赋值
console.log(Symbol('1') == Symbol('1'));// false
console.log(sy == sb); // true

// 函数嵌套函数 实现私有
var Pclass = (function () {
    const a = Symbol('a');
    const m = Symbol('m');
    function P() {
        this.a = '.点形式访问到了a';
        this[a] = 'a私有变量'
        this.b = '属性b是公有属性';
        this[m] = function () {
            console.log('m私有方法');
        }
    }
    P.prototype = {
        getA() {
            console.log(this[a]);
            this[m]();
        }
    }
    return P;
})()
const pc = new Pclass();
console.log(pc.b); //属性b是公有属性
console.log(pc.a); //.点形式访问到了a
// console.log(pc[a]);//ReferenceError: a is not defined 私有化成功
console.log(pc.m); //undefined
console.log(pc[m]); //ReferenceError: m is not defined 私有化成功
pc.getA();//a私有变量 m私有方法